Breakouts With Timefilter Strategy [LuciTech]This strategy captures breakout opportunities using pivot high/low breakouts while managing risk through dynamic stop-loss placement and position sizing. It includes a time filter to limit trades to specific sessions.
How It Works
A long trade is triggered when price closes above a pivot high, and a short trade when price closes below a pivot low.
Stop-loss can be set using ATR, prior candle high/low, or a fixed point value. Take-profit is based on a risk-reward multiplier.
Position size adjusts based on the percentage of equity risked.
Breakout signals are marked with triangles, and entry, stop-loss, and take-profit levels are plotted.
moving average filter: Bullish breakouts only trigger above the MA, bearish breakouts below.
The time filter shades the background during active trading hours.
Customization:
Adjustable pivot length for breakout sensitivity.
Risk settings: percentage risked, risk-reward ratio, and stop-loss type.
ATR settings: length, smoothing method (RMA, SMA, EMA, WMA).
Moving average filter (SMA, EMA, WMA, VWMA, HMA) to confirm breakouts.
Pesquisar nos scripts por "high low"
Kernel Regression Envelope with SMI OscillatorThis script combines the predictive capabilities of the **Nadaraya-Watson estimator**, implemented by the esteemed jdehorty (credit to him for his excellent work on the `KernelFunctions` library and the original Nadaraya-Watson Envelope indicator), with the confirmation strength of the **Stochastic Momentum Index (SMI)** to create a dynamic trend reversal strategy. The core idea is to identify potential overbought and oversold conditions using the Nadaraya-Watson Envelope and then confirm these signals with the SMI before entering a trade.
**Understanding the Nadaraya-Watson Envelope:**
The Nadaraya-Watson estimator is a non-parametric regression technique that essentially calculates a weighted average of past price data to estimate the current underlying trend. Unlike simple moving averages that give equal weight to all past data within a defined period, the Nadaraya-Watson estimator uses a **kernel function** (in this case, the Rational Quadratic Kernel) to assign weights. The key parameters influencing this estimation are:
* **Lookback Window (h):** This determines how many historical bars are considered for the estimation. A larger window results in a smoother estimation, while a smaller window makes it more reactive to recent price changes.
* **Relative Weighting (alpha):** This parameter controls the influence of different time frames in the estimation. Lower values emphasize longer-term price action, while higher values make the estimator more sensitive to shorter-term movements.
* **Start Regression at Bar (x\_0):** This allows you to exclude the potentially volatile initial bars of a chart from the calculation, leading to a more stable estimation.
The script calculates the Nadaraya-Watson estimation for the closing price (`yhat_close`), as well as the highs (`yhat_high`) and lows (`yhat_low`). The `yhat_close` is then used as the central trend line.
**Dynamic Envelope Bands with ATR:**
To identify potential entry and exit points around the Nadaraya-Watson estimation, the script uses **Average True Range (ATR)** to create dynamic envelope bands. ATR measures the volatility of the price. By multiplying the ATR by different factors (`nearFactor` and `farFactor`), we create multiple bands:
* **Near Bands:** These are closer to the Nadaraya-Watson estimation and are intended to identify potential immediate overbought or oversold zones.
* **Far Bands:** These are further away and can act as potential take-profit or stop-loss levels, representing more extreme price extensions.
The script calculates both near and far upper and lower bands, as well as an average between the near and far bands. This provides a nuanced view of potential support and resistance levels around the estimated trend.
**Confirming Reversals with the Stochastic Momentum Index (SMI):**
While the Nadaraya-Watson Envelope identifies potential overextended conditions, the **Stochastic Momentum Index (SMI)** is used to confirm a potential trend reversal. The SMI, unlike a traditional stochastic oscillator, oscillates around a zero line. It measures the location of the current closing price relative to the median of the high/low range over a specified period.
The script calculates the SMI on a **higher timeframe** (defined by the "Timeframe" input) to gain a broader perspective on the market momentum. This helps to filter out potential whipsaws and false signals that might occur on the current chart's timeframe. The SMI calculation involves:
* **%K Length:** The lookback period for calculating the highest high and lowest low.
* **%D Length:** The period for smoothing the relative range.
* **EMA Length:** The period for smoothing the SMI itself.
The script uses a double EMA for smoothing within the SMI calculation for added smoothness.
**How the Indicators Work Together in the Strategy:**
The strategy enters a long position when:
1. The closing price crosses below the **near lower band** of the Nadaraya-Watson Envelope, suggesting a potential oversold condition.
2. The SMI crosses above its EMA, indicating positive momentum.
3. The SMI value is below -50, further supporting the oversold idea on the higher timeframe.
Conversely, the strategy enters a short position when:
1. The closing price crosses above the **near upper band** of the Nadaraya-Watson Envelope, suggesting a potential overbought condition.
2. The SMI crosses below its EMA, indicating negative momentum.
3. The SMI value is above 50, further supporting the overbought idea on the higher timeframe.
Trades are closed when the price crosses the **far band** in the opposite direction of the trade. A stop-loss is also implemented based on a fixed value.
**In essence:** The Nadaraya-Watson Envelope identifies areas where the price might be deviating significantly from its estimated trend. The SMI, calculated on a higher timeframe, then acts as a confirmation signal, suggesting that the momentum is shifting in the direction of a potential reversal. The ATR-based bands provide dynamic entry and exit points based on the current volatility.
**How to Use the Script:**
1. **Apply the script to your chart.**
2. **Adjust the "Kernel Settings":**
* **Lookback Window (h):** Experiment with different values to find the smoothness that best suits the asset and timeframe you are trading. Lower values make the envelope more reactive, while higher values make it smoother.
* **Relative Weighting (alpha):** Adjust to control the influence of different timeframes on the Nadaraya-Watson estimation.
* **Start Regression at Bar (x\_0):** Increase this value if you want to exclude the initial, potentially volatile, bars from the calculation.
* **Stoploss:** Set your desired stop-loss value.
3. **Adjust the "SMI" settings:**
* **%K Length, %D Length, EMA Length:** These parameters control the sensitivity and smoothness of the SMI. Experiment to find settings that work well for your trading style.
* **Timeframe:** Select the higher timeframe you want to use for SMI confirmation.
4. **Adjust the "ATR Length" and "Near/Far ATR Factor":** These settings control the width and sensitivity of the envelope bands. Smaller ATR lengths make the bands more reactive to recent volatility.
5. **Customize the "Color Settings"** to your preference.
6. **Observe the plots:**
* The **Nadaraya-Watson Estimation (yhat)** line represents the estimated underlying trend.
* The **near and far upper and lower bands** visualize potential overbought and oversold zones based on the ATR.
* The **fill areas** highlight the regions between the near and far bands.
7. **Look for entry signals:** A long entry is considered when the price touches or crosses below the lower near band and the SMI confirms upward momentum. A short entry is considered when the price touches or crosses above the upper near band and the SMI confirms downward momentum.
8. **Manage your trades:** The script provides exit signals when the price crosses the far band. The fixed stop-loss will also close trades if the price moves against your position.
**Justification for Combining Nadaraya-Watson Envelope and SMI:**
The combination of the Nadaraya-Watson Envelope and the SMI provides a more robust approach to identifying potential trend reversals compared to using either indicator in isolation. The Nadaraya-Watson Envelope excels at identifying potential areas where the price is overextended relative to its recent history. However, relying solely on the envelope can lead to false signals, especially in choppy or volatile markets. By incorporating the SMI as a confirmation tool, we add a momentum filter that helps to validate the potential reversals signaled by the envelope. The higher timeframe SMI further helps to filter out noise and focus on more significant shifts in momentum. The ATR-based bands add a dynamic element to the entry and exit points, adapting to the current market volatility. This mashup aims to leverage the strengths of each indicator to create a more reliable trading strategy.
Elliott Wave with Supertrend Exit - Strategy [presentTrading]## Introduction and How it is Different
The Elliott Wave with Supertrend Exit provides automated detection and validation of Elliott Wave patterns for algorithmic trading. It is designed to objectively identify high-probability wave formations and signal entries based on confirmed impulsive and corrective patterns.
* The Elliott part is mostly referenced from Elliott Wave by @LuxAlgo
Key advantages compared to discretionary Elliott Wave analysis:
- Wave Labeling and Counting: The strategy programmatically identifies swing pivot highs/lows with the Zigzag indicator and analyzes the waves between them. It labels the potential impulsive and corrective patterns as they form. This removes the subjectivity of manual wave counting.
- Pattern Validation: A rules-based engine confirms valid impulsive and corrective patterns by checking relative size relationships and fib ratios. Only confirmed wave counts are plotted and traded.
- Objective Entry Signals: Trades are entered systematically on the start of new impulsive waves in the direction of the trend. Pattern failures invalidate setups and stop out positions.
- Automated Trade Management: The strategy defines specific rules for profit targets at fib extensions, trailing stops at swing points, and exits on Supertrend reversals. This automates the entire trade lifecycle.
- Adaptability: The waveform recognition engine can be tuned by adjusting parameters like Zigzag depth and Supertrend settings. It adapts to evolving market conditions.
ETH 1hr chart
In summary, the strategy brings automation, objectivity and adaptability to Elliott Wave trading - removing subjective interpretation errors and emotional trading biases. It implements a rules-based, algorithmic approach for systematically trading Elliott Wave patterns across markets and timeframes.
## Trading Logic and Rules
The strategy follows specific trading rules based on the detected and validated Elliott Wave patterns.
Entry Rules
- Long entry when a new impulsive bullish (5-wave) pattern forms
- Short entry when a new impulsive bearish (5-wave) pattern forms
The key is entering on the start of a new potential trend wave rather than chasing.
Exit Rules
- Invalidation of wave pattern stops out the trade
- Close long trades on Supertrend downturn
- Close short trades on Supertrend upturn
- Use a stop loss of 10% of entry price (configurable)
Trade Management
- Scale out partial profits at Fibonacci levels
- Move stop to breakeven when price reaches 1.618 extension
- Trail stops below key swing points
- Target exits at next Fibonacci projection level
Risk Management
- Use stop losses on all trades
- Trade only highest probability setups
- Size positions according to chart timeframe
- Avoid overtrading when no clear patterns emerge
## Strategy - How it Works
The core logic follows these steps:
1. Find swing highs/lows with Zigzag indicator
2. Analyze pivot points to detect impulsive 5-wave patterns:
- Waves 1, 3, and 5 should not overlap
- Waves 3 and 5 must be longer than wave 1
- Confirm relative size relationships between waves
3. Validate corrective 3-wave patterns:
- Look for overlapping, choppy waves that retrace the prior impulsive wave
4. Plot validated waves and Fibonacci retracement levels
5. Signal entries when a new impulsive wave pattern forms
6. Manage exits based on pattern failures and Supertrend reversals
Impulsive Wave Validation
The strategy checks relative size relationships to confirm valid impulsive waves.
For uptrends, it ensures:
```
Copy code- Wave 3 is longer than wave 1
- Wave 5 is longer than wave 2
- Waves do not overlap
```
Corrective Wave Validation
The strategy identifies overlapping corrective patterns that retrace the prior impulsive wave within Fibonacci levels.
Pattern Failure Invalidation
If waves fail validation tests, the strategy invalidates the pattern and stops signaling trades.
## Trade Direction
The strategy detects impulsive and corrective patterns in both uptrends and downtrends. Entries are signaled in the direction of the validated wave pattern.
## Usage
- Use on charts showing clear Elliott Wave patterns
- Start with daily or weekly timeframes to gauge overall trend
- Optimize Zigzag and Supertrend settings as needed
- Consider combining with other indicators for confirmation
## Default Settings
- Zigzag Length: 4 bars
- Supertrend Length: 10 bars
- Supertrend Multiplier: 3
- Stop Loss: 10% of entry price
- Trading Direction: Both
Master Supertrend Strategy [Trendoscope]Here is the strategy version of the indicator - Master Supertrend
Options and variations are same throughout.
🎲 Variations
Following variations are provided in the form of settings.
🎯 Range Type
Instead of ATR, different types of ranges can be used for stop calculation. Here is the complete list used in the script.
Plus/Minus Range* - Calculates plus range and minus range for each candle and uses them for different sides of stop calculation
Ladder ATR - Based on the existing concept of Ladder ATR defined in Supertrend-Ladder-ATR
True Range - True range derived from standard function ta.tr
Standard Deviation - Standard deviation of close prices
🎯 Applied Calculation
In standard ATR, rma of TR is used for calculations. But, the application calculation provides option to users to use different mechanisms. It can be a type of moving average or few other types of calculations.
Available values are
sma
ema
hma
rma
wma
high
median
🎯 Other options
Few other options provided are
Use Close Price - If selected stops are calculated based on the close price instead of high/low prices
Wait for Close If selected, change of supertrend direction is calculated based on close price instead of high/low prices
Diminishing Stop Distance - When selected, stop distance for the trend direction can only reduce and cannot increase. This option is useful for keeping the tight stops on strong trends.
🎯 Plus Minus Range*
One of the range type used is Plus/Minus Range. What it means and how are these ranges calculated? Let's have a look.
Plus Range is an upward movement of a candle from its last price or open price whichever is lower.
Minus Range is a downward movement of a candle from its last price or open price whichever is higher.
This divides True Range into two separate range for positive and negative side.
Note : Effectiveness on daily charts are quire visible. However, if you want to use it for lower timeframes, please play around with settings before settling on suitable configuration.
*Backtesting System ⚉ OVERVIEW ⚉
One of the best Systems for Backtesting your Strategies.
Incredibly flexible, simple, fast and feature-rich system — will solve most of your queries without much effort.
Many systems for setting StopLoss, TakeProfit, Risk Management and advanced Filters.
All you need to do is plug in your indicator and start Backtesting .
I intentionally left the option to use my System on Full Power before you load your indicator into it.
The system uses the built-in simple and popular moving average crossover signal for this purpose. (EMA 50 & 200).
Also Highly Recommend that you Fully use ALL of the features of this system so that you understand how they work before you ask questions.
Also tried to leave TIPS for each feature everywhere, read Tips, activate them and see how they work.
But before you use this system, I Recommend you to read the following description in Full.
—————— How to connect your indicator in 2 steps:
Adapt your indicator by adding only 2 lines of code and then connect it to this Backtesting System.
Step 1 — Create your connector, For doing so:
• 1 — Find or create in your indicator where are the conditions printing the Long-Buy and Short-Sell signals.
• 2 — Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator wether it's a MACD, RSI , Pivots, or whatever indicator with Clear Buy and Sell conditions.
//@version=5
indicator('Moving Average Cross', overlay = true)
MA200 = ta.𝚎𝚖𝚊(close, 200)
MA50 = ta.𝚎𝚖𝚊(close, 50)
// Generate Buy and Sell conditions
buy = ta.crossover (MA200, MA50)
sell = ta.crossunder (MA200, MA50)
plot(MA200, color=color.green)
plot(MA50 , color=color.red )
bgcolor(color = buy ? color.green : sell ? color.red : na, title='SIGNALS')
// ———————————————— SIGNAL FOR SYSTEM ————————————————
Signal = buy ? +1 : sell ? -1 : 0
plot(Signal, title='🔌Connector🔌', display = display.none)
// —————— 🔥 The Backtesting System expects the value to be exactly +1 for the 𝚋𝚞𝚕𝚕𝚒𝚜𝚑 signal, and -1 for the 𝚋𝚎𝚊𝚛𝚒𝚜𝚑 signal
Basically, I identified my Buy & Sell conditions in the code and added this at the bottom of my indicator code
Now you can connect your indicator to the Backtesting System using the Step 2
Step 2 — Connect the connector
• 1 — Add your updated indicator to a TradingView chart and Add the Backtesting System as well to the SAME chart
• 2 — Open the Backtesting System settings and in the External Source field select your 🔌Connector🔌 (which comes from your indicator)
_______________________________
⚉ MAIN SETTINGS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
𝐄𝐱𝐭𝐞𝐫𝐧𝐚𝐥 𝐒𝐨𝐮𝐫𝐜𝐞 — Select your indicator. Add your indicator by following the 2 steps described above and select it in the menu. To familiarize yourself with the system until you select your indicator, you will have an in-built strategy of crossing the two moving EMA's of 50 and 200.
Long Deals — Enable/Disable Long Deals.
Short Deals — Enable/Disable Short Deals.
Wait End Deal — Enable/Disable waiting for a trade to close at Stop Loss/Take Profit. Until the trade closes on the Stop Loss or Take Profit, no new trade will open.
Reverse Deals — To force the opening of a trade in the opposite direction.
ReEntry Deal — Automatically open the same new deal after the deal is closed.
ReOpen Deal — Reopen the trade if the same signal is received. For example, if you are already in the long and a new signal is received in the long, the trade will reopen. * Does not work if Wait End Deal is enabled.
𝐓𝐚𝐤𝐞 𝐏𝐫𝐨𝐟𝐢𝐭:
None — Disables take profit. Useful if you only want to use dynamic stoplosses such as MA, Fast-Trailing, ATR Trail.
FIXED % — Fixed take profit in percent.
FIXED $ — Fixed Take in Money.
ATR — Fixed Take based on ATR.
R:R — Fixed Take based on the size of your stop loss. For example, if your stop is 10% and R:R=1, then the Take would be 10%. R:R=3 Take would be 30%, etc.
HH / LL — Fixed Take based on the previous maximum/minimum (extremum).
𝐒𝐭𝐨𝐩 𝐋𝐨𝐬𝐬:
None — Disables Stop Loss. Useful if you want to work without a stop loss. *Be careful if Wait End Deal is enabled, the trade may not close for a long time until it reaches the Take.
FIXED % — Fixed Stop in percent.
FIXED $ — Fixed Stop in Money.
TRAILING — Dynamic Trailing Stop like on the stock exchanges.
FAST TRAIL — Dynamic Fast Trailing Stop moves immediately in profit and stays in place if the price stands still or the price moves in loss.
ATR — Fixed Stop based on the ATR.
ATR TRAIL — Dynamic Trailing Stop based on the ATR.
LO / HI — A Fixed Stop based on the last Maximum/Minimum extemum. Allows you to place a stop just behind or above the low/high candle.
MA — Dynamic Stop based on selected Moving Average. * You will have 8 types of MA (EMA, SMA, HMA, etc.) to choose from, but you can easily add dozens of other MAs, which makes this type of stop incredibly flexible.
Add % — If true, then with the "𝗦𝘁𝗼𝗽 %" parameter you can add percentages to any of the current SL. Can be especially useful when using Stop - 𝗔𝗧𝗥 or 𝗠𝗔 or 𝗟𝗢/𝗛𝗜. For example with 𝗟𝗢/𝗛𝗜 to put a stop for the last High/Low and add 0.5% additional Stoploss.
Fixed R:R — If the stop loss is Dynamic (Trailing or MA) then if R:R true can also be made Dynamic * Use it carefully, the function is experimental.
_________________________________________
⚉ TAKE PROFIT LEVELS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
A unique method of constructing intermediate Take Profit Levels will allow you to select up to 5 intermediate Take Profit Levels and one intermediate Stop Loss.
Intermediate Take Profit Levels are perfectly calculated into 5 equal parts in the form of levels from the entry point to the final Take Profit target.
All you need to do is to choose the necessary levels for fixing and how much you want to fix at each level as a percentage. For example, TP 3 will always be exactly between the entry point and the Take Profit target. And the value of TP 3 = 50 will close 50% of the amount of the remaining size of the position.
Note: all intermediate SL/TP are closed from the remaining position amount and not from the initial position size, as TV does by default.
SL 0 Position — works in the same way as TP 1-5 but it's Stop. With this parameter you can set the position where the intermediate stop will be set.
Breakeven on TP — When activated, it allows you to put the stop loss at Breakeven after the selected TP is reached. For this function to work as it should - you need to activate an intermediate Take. For example, if TP 3 is activated and Breakeven on TP = 3, then after the price reaches this level, the Stop loss will go to Breakeven.
* This function will not work with Dynamic Stoplosses, because it simply does not make sense.
CoolDown # Bars — When activated, allows you to add a delay before a new trade is opened. A new trade after CoolDown will not be opened until # bars pass and a new signal appears.
_____________________________
⚉ TIME FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Powerful time filter code that allows you to filter data based on specific time zones, dates, and session days. This code is ideal for those who need to analyze data from different time zones and weed out irrelevant data.
With Time Filter, you can easily set the starting and ending time zones by which you want to filter the data.
You can also set a start and end date for your data and choose which days of the week to include in the analysis. In addition, you can specify start and end times for a specific session, allowing you to focus your analysis on specific time periods.
_________________________________
⚉ SIGNAL FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Signal Filters — allows you to easily customize and optimize your trading strategies based on 10 filters.
Each filter is designed to help you weed out inaccurate signals to minimize your risks.
Let's take a look at their features:
__________________________________
⚉ RISK MANAGEMENT ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Risk management tools that allow you to set the maximum number of losing trades in a row, a limit on the number of trades per day or week and other filters.
Loss Streak — Set Max number of consecutive loss trades.
Win Streak — Max Winning Streak Length.
Row Loss InDay — Max of consecutive days with a loss in a row.
DrawDown % — Max DrawDown (in % of strategy equity).
InDay Loss % — Set Max Intraday Loss.
Daily Trades — Limit the number of MAX trades per day.
Weekly Trades — Limit the number of MAX trades per week.
* 🡅 I would Not Recommend using these functions without understanding how they work.
Order Size — Position Size
• NONE — Use the default position size settings in Tab "Properties".
• EQUITY — The amount of the allowed position as a percentage of the initial capital.
• Use Net Profit — On/Off the use of profit in the following trades. *Only works if the type is EQUITY.
• SIZE — The size of the allowed position in monetary terms.
• Contracts — The size of the allowed position in the contracts. 1 Сontract = Сurrent price.
________________
⚉ NOTES ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
It is important to note that I have never worked with Backtesting and the functions associated with them before.
It took me about a month of slow work to build this system.
I want to say Big Thanks:
• The PineScripters🌲 group, the guys suggested how to implement some features. Especially @allanster
• Thanks to all those people who share their developments for free on TV and not only.
• I also thank myself for not giving up and finishing the project, and not trying to monetize the system by selling it. * Although I really want the money :)
I tried hard to make it as fast and convenient as possible for everyone who will use my code.
That's why I didn't use any libraries and dozens of heavy functions, and I managed to fit in 8+-functions for the whole code.
Absolutely every block of code I tried to make full-fledged modular, that it was easy to import/edit for myself (you).
I have abused the Ternary Pine operator a little (a lot) so that the code was as compact as possible.
Nevertheless, I tried very hard to keep my code very understandable even for beginners.
At last I managed to write 500 lines of code, making it one of the fastest and most feature-rich systems out there.
I hope everyone enjoys my work.
Put comments and write likes.
M0PB (Momentum Pullback)Long/short strategy that identifies extreme readings on the rsi as a *momentum signal*, unlike most RSI strategies the script will look to buy or sell the first pullback in the direction of the extreme RSI reading.
Enters positions on the first pullback to the 5ema(low)/ 5ema(high) and exits at rolling 12 bar high/ low. The rolling high/ low feature means that if the price enters into a prolonged consolidation the profit target will begin to reduce with each new bar. The best trades tend to work within 2-6 bars.
Built for use on 5 min intervals on FX, Indexes, and Crypto. Lower than 5 minute time frames tend to be noisier and mean more commissions and a higher risk of slippage so the suggested timeframe is 5 mins.
Hard stop is X ATR (users can experiment with this) from the position entry price. This can be adjusted in user inputs.
There is a lot of slack left in entries and exits but the overall strategy is fairly robust across timeframes and markets and has between 60%-70% win rate with larger winners.
Signals that occur from economic news volatility are best avoided.
Algonize Pivot Strategy (APS)This study is based on several Price Action parameters of :-
• Pivot Points,
• Higher High and Lower Lows,
• High Low Index ,
• Support and Resistance.
► How To Use This Strategy?
This is a pure scalping strategy and it is advised to use this only with algo trading systems. Due to high trade frequency.
► This Strategy has inbuilt custom time frame backtester, which enables you to test for performance between any date or check for a single day.
► To Create Alerts for algo trading in this strategy simply Check "Activate Algo" from Settings then Create new alert , select your strategy in condition box, and now scroll down to message box and write
{{strategy.order.comment}}
That's it , Just Click on Create Alert Button
Backtest Values Used:-
Initial Capital : 1000000
Order Size (Lots) : 1 (Contract) Lots
Pyramiding : 0 orders
Commission : 0.003%
Sharpe Ratio : 1.741
Profit Factor : 1.174
Test Yourself and give feedback.
PM us to obtain access.
Breakout Scalper (Session)This is a twist on my on my Breakout Scalper strategy that limits trading to a user-configurable session
Find the original "Continuous" version of the scalper here:
The breakout scalper is based on "slow" and "fast" donchian periods. In this version, the "slow" donchian is in fact the Day's high/low. This important difference means that we will always be entering our trades at the day's high or low, so you are exposed to the price making new highs/lows but not to oscillations within the day's range.
Furthermore, the scalper is modified to only enter trades after the start of the user-configured session. Any open trades are closed at the end of the user-configured session. The default session is set to 10:00 AM to 3:30 PM because that's when I like to trade.
RSI and Smoothed RSI Bull Div Strategy [BigBitsIO]This strategy focuses on finding a low RSI value, then targeting a low Smoothed RSI value while the price is below the low RSI in the lookback period to trigger a buy signal.
Features Take Profit, Stop Loss, and Plot Target inputs. As well as many inputs to manage how the RSI and Smoothed RSI are configured within the strategy.
Explanation of all the inputs
Take Profit %: % change in price from position entry where strategy takes profit
Stop Loss %: % change in price from position entry where strategy stops losses
RSI Lookback Period: # of candles used to calculate RSI
Buy Below Lowest Low In RSI Divergence Lookback Target %: % change in price from lowest RSI candle in divergence lookback if set
Source of Buy Below Target Price: Source of price (close, open, high, low, etc..) used to calculated buy below %
Smoothed RSI Lookback Period: # of candles used to calculate RSI
RSI Currently Below: Value the current RSI must be below to trigger a buy
RSI Divergence Lookback Period: # of candles used to lookback for lowest RSI in the divergence lookback period
RSI Lowest In Divergence Lookback Currently Below: Require the lowest RSI in the divergence lookback to be below this value
RSI Sell Above: If take profit or stop loss is not hit, the position will sell when RSI rises above this value
Minimum SRSI Downtrend Length: Require that the downtrend length of the SRSI be this value or higher to trigger a buy
Smoothed RSI Currently Below: Value the current SRSI must be below to trigger a buy
D Money – EMA/TEMA Touch Strategy (Distance) What it’s trying to capture
You want mean-reversion “tags” back to a moving average after price has stretched away and momentum flips:
Bearish setup (short): price has been above EMA(9) for a few bars, then MACD turns bearish, and price is far enough above the EMA (by an adaptive threshold). Exit when price tags the EMA.
Bullish setup (long): price has been below your chosen TEMA rail (actually an EMA of 50/100/200 you pick) for a few bars, then MACD turns bullish, and price is far enough below that TEMA. Exit when price tags that TEMA.
The moving averages it uses
EMA(9) — your fast “tag” for short take-profits.
“TEMA line” input = one of EMA(50) / EMA(100) / EMA(200). (Labelled “Chosen TEMA” in the plot; it’s an EMA rail you pick.)
When it will enter trades
It requires four things per side:
Short (EMA-Touch Short)
MACD bearish cross on the signal bar
If “Require NO MA touch on cross bar” = true, the bar’s low must be above EMA(9), so it didn’t touch EMA on the cross bar (fake-out guard).
Extension/Context: you’ve had at least barsAbove consecutive closes above EMA(9) (default 3), so it’s truly stretched.
Distance test: absolute % distance from price to EMA(9) must be ≥ minDistEMA_eff (an adaptive threshold; details below).
Bounce filter: there was no bullish bounce off the EMA in the last bounceLookback bars (excluding the current one).
If all pass and you’re inside the backtest window → strategy.entry short.
Long (TEMA-Touch Long)
MACD bullish cross on the signal bar
With the same fake-out guard: the bar’s high must be below the chosen TEMA if the guard is on.
Extension/Context: at least barsAbove consecutive closes below the chosen TEMA.
Distance test: absolute % distance from price to TEMA must be ≥ minDistTEMA_eff (adaptive).
Bounce filter: there was no bearish bounce off the TEMA in the last bounceLookback bars.
If all pass and you’re in the window → strategy.entry long.
MACD timing option:
If Pure MACD Timing = ON, it only checks for the cross.
If OFF (default), it also enforces “no touch on the cross bar” if that checkbox is true. That’s your “fake-out” filter.
The adaptive distance threshold (the “secret sauce”)
You can choose how “far enough away” is determined—per side:
Fixed %
Short uses Fixed: Min distance ABOVE EMA (%)
Long uses Fixed: Min distance BELOW TEMA (%)
Auto (ATR%) (default)
Short threshold = max(floorEMA, kAtrShort × ATR%)
Long threshold = max(floorTEMA, kAtrLong × ATR%)
This scales distance by recent volatility, with a floor.
Auto (AvgDist%)
Short threshold = max(floorEMA, kAvgShort × average(|Dist to EMA|) over avgLen)
Long threshold = max(floorTEMA, kAvgLong × average(|Dist to TEMA|) over avgLen)
This adapts to the instrument’s typical stretch away from the rails.
These become minDistEMA_eff and minDistTEMA_eff and are re-computed each bar.
Fake-out / bounce logic (the “don’t get tricked” part)
A touch means the bar’s high/low overlapped the MA ± a small buffer % (touchBufPct).
A bounce is a touch plus a close on the “wrong” side (e.g., touch EMA and close above it on shorts = bullish bounce).
The script blocks entries if a bounce happened within bounceLookback bars (excluding the current signal bar).
Exits & risk
Take profit: when price touches the target MA:
Short TP = touch EMA(9)
Long TP = touch chosen TEMA
Stop loss: either
ATR stop: entry ± (atrMultStop × ATR) (default ON), or
Percent stop: entry × (1±stopPct%)
Time stop: if timeExitBars > 0, close after that many bars if still open.
Quality-of-life features
Backtest window (btFrom, btTo) so you can limit evaluation.
Labels on signal bars that show:
MACD bucket (Small/Moderate/HUGE/Violent — based on % separation on the bar),
the current absolute distance to the target MA,
and the effective minimum the engine used (plus which engine mode).
Data Window fields so you can audit:
abs distance to EMA/TEMA,
the effective min distance used on each side,
ATR%,
average absolute distances (for the AvgDist mode).
Alerts fire when a short/long signal is confirmed.
Optional debug panel to see the exact booleans & thresholds the bar had.
Quick mental model
Are we properly stretched away from the rail (by an adaptive threshold) and held on that side for a few bars?
Did MACD flip the way we want without price already tagging the rail that bar?
Have we avoided recent bounces off that rail (no fake-out)?
→ If yes, enter and aim for a tag back to the rail, with ATR/% stop and optional time stop.
If you want, I can add a simple on-chart “rating” (0–100) similar to your Python scorer (distance beyond min, MACD bucket, extension streak) so you can visually rank signals in TradingView too.
ORDER BLCOK custom strategy# OB Matrix Strategy - Documentation
**Version:** 1.0
**Author:** HPotter
**Date:** 31/07/2017
The **OB Matrix Strategy** is based on the identification of **bullish and bearish Order Blocks** and the management of conditional orders with multiple Take Profit (TP) and Stop Loss (SL) levels. It uses trend filters, ATR, and percentage-based risk management.
---
## 1. Main Parameters
### Strategy
- `initial_capital`: 50
- `default_qty_type`: percentage of capital
- `default_qty_value`: 10
### Money Management
- `rr_threshold`: minimum Risk/Reward threshold to open a trade
- `risk_percent`: percentage of capital to risk per trade (default 2%)
- `maxPendingBars`: maximum number of bars for a pending order
- `maxBarsOpen`: maximum number of bars for an open position
- `qty_tp1`, `qty_tp2`, `qty_tp3`: quantity percentages for multiple TPs
---
## 2. Order Block Identification
### Order Block Parameters
- `obLookback`: number of bars to identify an Order Block
- `obmode`: method to calculate the block (`Full` or `Breadth`)
- `obmiti`: method to determine block mitigation (`Close`, `Wick`, `Avg`)
- `obMaxBlocks`: maximum number of Order Blocks displayed
### Main Variables
- `bullBlocks`: array of bullish blocks
- `bearBlocks`: array of bearish blocks
- `last_bull_volume`, `last_bear_volume`: volume of the last block
- `dom_block`: dominant block type (Bullish/Bearish/None)
- `block_strength`: block strength (normalized volume)
- `price_distance`: distance between current price and nearest block
---
## 3. Visual Parameters
- `Width`: line thickness for swing high/low
- `amountOfBoxes`: block grid segments
- `showBorder`: show block borders
- `borderWidth`: width of block borders
- `showVolume`: display volume inside blocks
- `volumePosition`: vertical position of volume text
Customizable colors:
- `obHighVolumeColor`, `obLowVolumeColor`, `obBearHighVolumeColor`, `obBearLowVolumeColor`
- `obBullBorderColor`, `obBearBorderColor`
- `obBullFillColor`, `obBearFillColor`
- `volumeTextColor`
---
## 4. Screener Table
- `showScreener`: display the screener table
- `tablePosition`: table position (`Top Left`, `Top Right`, `Bottom Left`, `Bottom Right`)
- `tableSize`: table size (`Small`, `Normal`, `Large`)
The table shows:
- Symbol, Timeframe
- Type and status of Order Block
- Number of retests
- Bullish and bearish volumes
---
## 5. Trend Filters
- EMA as a trend filter (`emaPeriod`, default 223)
- `bullishTrend` if close > EMA
- `bearishTrend` if close < EMA
---
## 6. ATR and Swing Points
- ATR calculated with a customizable period (`atrLength`)
- Swing High/Low for SL/TP calculation
- `f_getSwingTargets` function to calculate SL and TP based on direction
---
## 7. Trade Logic
### Buy Limit on Bullish OB
- Conditions:
- New bullish block
- Uptrend
- RR > threshold (`rr_threshold`)
- SL: `bullishOBPrice * (1 - atr * atrMultiplier)`
- Multiple TPs: TP1 (50%), TP2 (80%), TP3 (100% max)
- Quantity calculation based on percentage risk
### Sell Limit on Bearish OB
- Conditions:
- New bearish block
- Downtrend
- RR > threshold (`rr_threshold`)
- SL: `bearishOBPrice * (1 + atr * atrMultiplier)`
- Multiple TPs: TP1 (50%), TP2 (80%), TP3 (100% max)
- Quantity calculation based on percentage risk
---
## 8. Order Management and Timeout
- Close pending orders after `maxPendingBars` bars
- Close open positions after `maxBarsOpen` bars
- Label management for open orders
---
## 9. Alert Conditions
- `bull_touch`: price inside maximum bullish volume zone
- `bear_touch`: price inside maximum bearish volume zone
- `bull_reject`: confirmation of bullish zone rejection
- `bear_reject`: confirmation of bearish zone rejection
- `new_bull`: new bullish block
- `new_bear`: new bearish block
---
## 10. Level Calculation
- Swing levels based on selected timeframe (`SelectPeriod`)
- `xHigh` and `xLow` for S1 and R1 calculation
- Levels plotted on chart
---
## 11. Take Profit / Stop Loss
- Extended horizontal lines (`extendBars`) to visualize TP and SL
- Customizable colors (`tpColor`, `slColor`)
---
## 12. Notes
- Complete script based on Pine Script v5
- Advanced graphical management with boxes, lines, labels
- Dynamically displays volumes and Order Blocks
- Integrated internal screener
---
### End of Documentation
AlgoIndex - All Stages (AM & Mid-Day Long/Short)Scope (read first)
ES1! on 5-minute only. The strategy backtests ES fills; alerts can post JSON messages to a Webhook URL you configure. Exits are target-based with ITTC - if ES touches target intra-bar, an exit alert is sent immediately. No fixed ES stop-loss. Positions can also exit at scheduled time-based safety closes (session end, holiday/half-day, or expiration end). You can always close manually.
What this is
One intraday engine with four session presets (“Stages”). Stages only change session windows, trade side, and a few risk/confirmation governors—the core logic is the same. Single invite-only listing; not a multi-post suite.
How it trades
Opening Range (OR): Each Stage begins with a short OR at its session start; that Stage won’t take entries until its OR closes.
VWAP alignment: Trade with flow. Price must align with VWAP (simple pass/fail; optional gap offset).
Real breakouts only: A composite “impulse” check looks for volume expansion, recent momentum, ATR-scaled range, body/range quality, and a clean OR break (or a gap-aware extension).
Entry & target: Entries occur on the signal bar’s close; targets are set in underlying (ES) units.
ITTC (close on touch): If ES touches target intra-bar, ITTC sends a one-shot exit.
Adds (preset by Stage): S1/S2/S3 allow up to two adds on defined ES retraces; S4 disables adds. Adds use a fixed scale-out policy handled internally—no user input required.
Time-based safety closes: At the configured session end (and on holiday/half-day or expiration when applicable), any open position is closed. These are time exits, not price stops.
Why traders use it
A progressive filter for intraday continuity: OR context → VWAP alignment → authentic breakout (impulse) → ITTC to sync ES triggers with options execution. Stage-governed adds keep scaled positions coherent from open to close.
Stages (session templates; one engine)
S1 — 09:30–11:20 NY, Long-only. Standard impulse; adds ON.
S2 — 09:30–11:30 NY, Short-only. Tighter breakout standard; adds ON.
S3 — 11:15–15:15 NY, Long-only. Trade-protection ON; slightly lower underlying target; adds ON.
S4 — 11:30–14:30 NY, Short-only. Alternative trigger governor; slightly lower underlying target; adds OFF.
You can replicate any Stage via session times, side, and thresholds; presets exist for convenience and auditability.
Public inputs (what you can adjust)
Contracts (order size)
TP (Underlying) and TP (Options)
Trade Limiter (toggle) + Max profitable trades per session
Session settings: Exchange Day Session times, optional Custom Time Zone, Session 1 times, optional Session 2, and day-of-week checkboxes
Visual overlays (display-only): VWAP, Prior-Day High/Low, Session High/Low, Round Numbers, Bias Banner, Trade Markers
Display: Inputs in status line
Alerts (how to use)
Create an alert on this strategy and select “Any alert() function call.” (Optional) add a Webhook URL you control to receive the JSON the script sends. Leave Message empty.
Backtest vs options (read carefully)
Backtests show ES fills on 5-minute bars; options pricing (IV, DTE, spreads, partial fills) isn’t simulated. Because live execution uses options, ES PnL is a directional proxy only.
Evaluate quality via: trade count (target ≥100), win rate, average time-in-trade, MAE/MFE, and holding-time distribution. Do not read ES $ PnL as expected options returns—actual options outcomes depend on strike/DTE, IV regime, spreads, and execution.
Defaults used in this publication (match these before interpreting results)
Dataset: last 12–24 months of ES1! 5-minute RTH (to ensure ≥100 trades)
Initial capital: $25,000
Commission: $1.00 per order per contract (≈ $2 round-trip)
Slippage: 1 tick
Order size: 1 contract; pyramiding only for Stage-governed adds
No fixed ES stop-loss; exits are target-based with ITTC and scheduled safety closes
Operating notes
ES1! symbol only; 5-minute resolution only
You can run multiple Stages in parallel via separate tabs/alerts; if you want a single net position across Stages, enforce it in your own tooling (e.g., ignore new orders while a position is open)
Use a clean chart when publishing (only this strategy active)
Keep results separate by using four TradingView tabs (one per Stage)
Disclosures
Educational research tool, not financial advice. Past or hypothetical performance does not guarantee future results. Trading involves risk, including the risk of loss. Test thoroughly and use at your own discretion.
💎🔺⚫ Diamond-Triangle-Circle StrategyUpgrade the high low low high strat to cut out signal noise and flat markets dont take the black circles they eat profits
Sr.Rma.Prev High/lows with Alerts
Disclaimer: This chart is designed for educational purposes only. Please conduct your own due diligence before entering any trades.
The strategy is based on previous highs and lows, combined with stop-loss and reversal percentage logic. It is most effective on SPY and QQQ using the 1-minute time-frame, where I personally trade next-day expiration with preset configurations.
If you choose to apply it to other stocks, be sure to adjust the stop-loss % and re-entry % parameters to match your trading style and risk tolerance.
Gann Fan Strategy [KedarArc Quant]Description
A single-concept, rule-based strategy that trades around a programmatic Gann Fan.
It anchors to a swing (or a manual point), builds 1×1 and related fan lines numerically, and triggers entries when price interacts with the 1×1 (breakout or bounce). Management is done entirely with the fan structure (next/previous line) plus optional ATR trailing.
What TV indicators are used
* Pivots: `ta.pivothigh/ta.pivotlow` to confirm swing highs/lows for anchor selection.
* ATR: `ta.atr` only to scale the 1×1 slope (optional) and for an optional trailing stop.
* EMA: `ta.ema` as a trend filter (e.g., only long above the EMA, short below).
No RSI/MACD/Stoch/Heikin/etc. The logic is one coherent framework: Gann price–time geometry, with ATR as a scale and EMA as a risk filter.
How it works
1. Anchor
* Auto: chooses the most recent *confirmed* pivot (you control Left/Right).
* Manual: set a price and bar index and the fan will hold that point (no re-anchoring).
* Optional Re-anchor when a newer pivot confirms.
2. 1×1 Slope (numeric, not cosmetic)
* ATR mode: `1×1 = ATR(Length) × Multiplier` (adapts to volatility).
* Fixed mode: `ticks per bar` (constant slope).
Because slope is numeric, it doesn’t change with chart zoom, unlike the drawing tool.
3. Fan Lines
Builds classic ratios around the 1×1: 1/8, 1/4, 1/3, 1/2, 1/1, 2/1, 3/1, 4/1, 8/1.
4. Signals
* Breakout: cross of price over/under the 1×1 in the EMA-aligned direction.
* Bounce (optional): touch + reversal across the 1×1 to reduce whipsaw.
5. Exits & Risk
* Take-profit at the next fan line; Stop at the previous fan line.
* If a level is missing (right after re-anchor), a fallback Risk-Reward (RR) is used.
* Optional ATR trailing stop.
Why this is unique
* True numeric fan: The 1×1 slope is calculated from ATR or fixed ticks—not from screen geometry—so it is scale-invariant and reproducible across users/timeframes.
* Deterministic anchor logic: Uses confirmed pivots (with your L/R settings). No look-ahead; anchors update only when the right bars complete.
* Fan-native trade management: Both entries and exits come from the fan structure itself (with a minimal ATR/EMA assist), keeping the method pure.
* Two entry archetypes: Breakout for momentum days; Bounce for range days—switchable without changing the core model.
* Manual mode: Lock a session’s bias by anchoring to a chosen swing (e.g., day’s first major low/high) and keep the fan constant all day.
Inputs (quick guide)
* Auto Anchor (Left/Right): pivot sensitivity. Higher values = fewer, stronger anchors.
* Re-anchor: refresh to newer pivots as they confirm.
* Manual Anchor Price / Bar Index: fixes the fan (turn Auto off).
* Scale 1×1 by ATR: on = adaptive; off = use ticks per bar.
* ATR Length / ATR Multiplier: controls adaptive slope; start around 14 / 0.25–0.35.
* Ticks per bar: exact fixed slope (match a hand-drawn fan by computing slope ÷ mintick).
* EMA Trend Filter: e.g., 50–100; trades only in EMA direction.
* Use Bounce: require touch + reverse across 1×1 (helps in chop).
* TP/SL at fan lines; Fallback RR for missing levels; ATR Trailing Stop optional.
* Transparency/Plot EMA: visual preferences.
Tips
* Range days: larger pivots (L/R 8–12), Bounce ON, ATR Multiplier \~0.30–0.40, EMA 100.
* Trend days: L/R 5–6, Breakout, Multiplier \~0.20–0.30, EMA 50, ATR trail 1.0–1.5.
* Match the TV Gann Fan drawing: turn ATR scale OFF, set ticks per bar = `(Δprice between anchor and 1×1 target) / (bars) / mintick`.
Repainting & testing notes
* Pivots require Right bars to confirm; anchors are set after confirmation (no look-ahead).
* Signals use the current bar close with TradingView strategy mechanics; real-time vs. bar-close can differ slightly, as with any strategy.
* Re-anchoring legitimately moves the structure when new pivots confirm—by design.
⚠️ Disclaimer
This script is provided for educational purposes only.
Past performance does not guarantee future results.
Trading involves risk, and users should exercise caution and use proper risk management when applying this strategy.
Reversal & Breakout Strategy - CompleteThis is a complete intraday trading strategy script for TradingView that lets you:
1. Choose Between Two Styles of Trades:
Reversals: It looks for large bullish or bearish candles during market sessions and enters trades expecting price to reverse.
Breakouts: It scans for price breaking above or below a recent high or low (based on a lookback range) and enters in the direction of the breakout.
2. Filters Trades by Session and Day Type:
Trades only during sessions you choose: NY1, NY2, London, Asia, etc.
Trades only on specific day types (e.g., DNP, DWP, Range 1, Range 2), as classified by a custom daily behavior model.
3. Uses 9:30 AM Candle Logic (ORB):
Captures the 9:30 AM Eastern candle's high/low using 1-minute data.
Allows breakout confirmation using this range.
4. Entry + Exit Logic:
Enters on reversal or breakout confirmation.
Automatically places stop-loss and take-profit orders (based on your input, in ticks or points).
Can require classification before entry (e.g., don’t trade until the market type is known).
5. Tracks Trades and Performance:
Records each trade's PnL, drawdown, win/loss, classification, time, and session.
Displays a table with analytics like win rate, expectancy, average drawdown, trade distribution by day/classification.
6. Visually Shows All Trades:
Draws arrows and shapes when trades are triggered.
Labels when trades are blocked (e.g., if not classified yet).
Plots breakout levels and 9:30 AM box.
US30 Stealth StrategyOnly works on US30 (CAPITALCOM) 5 Minute chart
📈 Core Concept:
This is a trend-following strategy that captures strong market continuations by entering on:
The 3rd swing in the current trend,
Confirmed by a volume-verified engulfing candle,
With adaptive SL/TP and position sizing based on risk.
🧠 Entry Logic:
✅ Trend Filter
Uses a 50-period Simple Moving Average (SMA).
Buy only if price is above SMA → Uptrend
Sell only if price is below SMA → Downtrend
✅ Swing Count Logic
For buy: Wait for the 3rd higher low
For sell: Wait for the 3rd lower high
Uses a 5-bar lookback to detect highs/lows
This ensures you’re not buying early — but after trend is confirmed with structure.
✅ Engulfing Candle Confirmation
Bullish engulfing for buys
Bearish engulfing for sells
Candle must engulf previous bar completely (body logic)
✅ Volume Filter
Current candle volume must be greater than the 20-period volume average
Ensures trades only occur with institutional participation
✅ MA Slope Filter
Requires the slope of the 50 SMA over the last 3 candles to exceed 0.1
Avoids chop or flat trends
Adds momentum confirmation to the trade
✅ Session Filter (Time Filter)
Trades only executed between:
2:00 AM to 11:00 PM Oman Time (UTC+4)
Helps avoid overnight chop and illiquidity
📊 Position Sizing & Risk Management
✅ Smart SL (Adaptive Stop Loss)
SL is based on full size of the signal candle (including wick)
But if candle is larger than 25 points, SL is cut to half the size
This prevents oversized risk from long signals during volatile moves.
Multi-Timeframe Wolfe Wave StrategyThis invite-only strategy implements an advanced multi-timeframe Wolfe Wave pattern recognition system specifically designed for institutional-grade algorithmic trading environments.
**Core Mathematical Framework:**
The strategy employs sophisticated mathematical calculations across 10 distinct timeframes (377, 233, 144, 89, 55, 34, 21, 13, 8, 5 periods), utilizing Elliott Wave ratio theory combined with proprietary algorithmic enhancements. Unlike standard Wolfe Wave implementations that rely on visual pattern recognition, this system uses quantitative analysis to identify precise entry and exit points.
**Technical Implementation:**
• **Pattern Detection Algorithm:** Calculates price relationships using configurable ratio sets including Fibonacci sequences, Elliott Wave ratios, Golden Ratio, Harmonic Patterns, Pi-based calculations, and custom mathematical progressions
• **Multi-Timeframe Confluence:** Simultaneously analyzes patterns across all timeframes to ensure signal reliability and reduce false positives
• **Dynamic Target Calculation:** Employs advanced mathematical modeling to project optimal profit targets based on historical price behavior and pattern completion theory
• **Risk Management Engine:** Implements position-based stop losses calculated as percentages of target profits, with liquidation price monitoring for leveraged positions
**Originality and Innovation:**
This implementation differs significantly from traditional Wolfe Wave indicators through several key innovations:
1. **Algorithmic Pattern Validation:** Uses mathematical confirmation across multiple timeframes rather than subjective visual analysis
2. **Adaptive Ratio Selection:** Offers 24 different ratio calculation methods, allowing optimization for various market conditions
3. **Institutional Integration:** Features comprehensive webhook messaging for automated execution via external trading systems
4. **Advanced Position Management:** Includes sophisticated position sizing controls with maximum concurrent position limits
**Strategy Logic:**
For bullish conditions, the algorithm identifies when price action meets specific mathematical criteria:
- Point validation through ratio analysis between swing highs/lows
- Confluence confirmation across multiple timeframes
- Minimum profit threshold filtering to ensure trade quality
- Dynamic stop-loss positioning based on pattern geometry
The mathematical approach uses proprietary calculations that extend beyond traditional Fibonacci levels, incorporating elements from chaos theory, fractal geometry, and advanced statistical analysis.
**Risk Management Features:**
• Configurable stop-loss percentages relative to profit targets
• Maximum position limits to control portfolio exposure
• Liquidation price monitoring for margin trading
• Time-based filtering options for market session control
• Minimum profit threshold settings to filter low-quality signals
**Intended Markets and Conditions:**
Optimized for cryptocurrency markets with high volatility and sufficient liquidity. Works effectively in trending and ranging market conditions due to its multi-timeframe approach. Best suited for assets with clear swing structure and adequate price movement.
**Performance Characteristics:**
The strategy is designed for active trading with frequent position entries across multiple timeframes. Position holding periods vary from short-term scalping to medium-term swing trading depending on pattern completion timeframes.
**Technical Requirements:**
Requires understanding of advanced pattern recognition theory, risk management principles, and algorithmic trading concepts. Users should be familiar with Wolfe Wave methodology and Elliott Wave theory fundamentals.
Volume and Volatility Ratio Indicator-WODI策略名称
交易量与波动率比例策略-WODI
一、用户自定义参数
vol_length:交易量均线长度,计算基础交易量活跃度。
index_short_length / index_long_length:指数短期与长期均线长度,用于捕捉中短期与中长期趋势。
index_magnification:敏感度放大倍数,调整指数均线的灵敏度。
index_threshold_magnification:阈值放大因子,用于动态过滤噪音。
lookback_bars:形态检测回溯K线根数,用于捕捉反转模式。
fib_tp_ratio / fib_sl_ratio:斐波那契止盈与止损比率,分别对应黄金分割(0.618/0.382 等)级别。
enable_reversal:反转信号开关,开启后将原有做空信号反向为做多信号,用于单边趋势加仓。
二、核心计算逻辑
交易量百分比
使用 ta.sma 计算 vol_ma,并得到 vol_percent = volume / vol_ma * 100。
价格波动率
volatility = (high – low) / close * 100。
构建复合指数
volatility_index = vol_percent * volatility,并分别计算其短期与长期均线(乘以 index_magnification)。
动态阈值
index_threshold = index_long_ma * index_threshold_magnification,过滤常规波动。
三、信号生成与策略执行
做多/做空信号
当短期指数均线自下而上突破长期均线,且 volatility_index 突破 index_threshold 时,发出做多信号。
当短期指数均线自上而下跌破长期均线,且 volatility_index 跌破 index_threshold 时,发出做空信号。
反转信号模式(可选)
若 enable_reversal = true,则所有做空信号反向为做多,用于在强趋势行情中加仓。
止盈止损管理
进场后自动设置斐波那契止盈位(基于入场价 × fib_tp_ratio)和止损位(入场价 × fib_sl_ratio)。
支持多级止盈:可依次以 0.382、0.618 等黄金分割比率分批平仓。
四、图表展示
策略信号标记:图上用箭头标明每次做多/做空(或反转加仓)信号。
斐波那契区间:在K线图中显示止盈/止损水平线。
复合指数与阈值线:与原版相同,在独立窗口绘制短、长期指数均线、指数曲线及阈值。
量能柱状:高于均线时染色,反转模式时额外高亮。
Strategy Name
Volume and Volatility Ratio Strategy – WODI
1. User-Defined Parameters
vol_length: Length for volume SMA.
index_short_length / index_long_length: Short and long MA lengths for the composite index.
index_magnification: Sensitivity multiplier for index MAs.
index_threshold_magnification: Threshold multiplier to filter noise.
lookback_bars: Number of bars to look back for pattern detection.
fib_tp_ratio / fib_sl_ratio: Fibonacci take-profit and stop-loss ratios (e.g. 0.618, 0.382).
enable_reversal: Toggle for reversal mode; flips short signals to long for trend-following add-on entries.
2. Core Calculation
Volume Percentage:
vol_ma = ta.sma(volume, vol_length)
vol_percent = volume / vol_ma * 100
Volatility:
volatility = (high – low) / close * 100
Composite Index:
volatility_index = vol_percent * volatility
Short/long MAs applied and scaled by index_magnification.
Dynamic Threshold:
index_threshold = index_long_ma * index_threshold_magnification.
3. Signal Generation & Execution
Long/Short Entries:
Long when short MA crosses above long MA and volatility_index > index_threshold.
Short when short MA crosses below long MA and volatility_index < index_threshold.
Reversal Mode (optional):
If enable_reversal is on, invert all short entries to long to scale into trending moves.
Fibonacci Take-Profit & Stop-Loss:
Automatically set TP/SL levels at entry price × respective Fibonacci ratios.
Supports multi-stage exits at 0.382, 0.618, etc.
4. Visualization
Signal Arrows: Marks every long/short or reversal-add signal on the chart.
Fibonacci Zones: Plots TP/SL lines on the price panel.
Index & Threshold: Same as v1.0, with MAs, index curve, and threshold in a separate sub-window.
Volume Bars: Colored when above vol_ma; extra highlight if a reversal-add signal triggers
SMPivot Gaussian Trend Strategy [Js.K]This open-source strategy combines a Gaussian-weighted moving average with “Smart Money” swing-pivot breaks (BoS = Break-of-Structure) to capture trend continuations and early reversals. It is intended for educational and research purposes only and must not be interpreted as financial advice.
How the logic works
-------------------
1. Gaussian Moving Average (GMA)
• A custom Gaussian kernel (length = 30 by default) smooths price while preserving turning points.
• A second pass (“Smoothed GMA”) further filters noise; only its direction is used for bias.
2. Swing-Pivot detection
• High/Low pivots are found with a symmetric look-back/forward window (Pivot Length = 20).
• The most recent confirmed pivot creates a dynamic structure level (UpdatedHigh / UpdatedLow).
3. Entry rules
Long
• Price closes above the most recent pivot high **and** above Smoothed GMA.
Short
• Price closes below the most recent pivot low **and** below Smoothed GMA.
4. Exit rules
• Fixed stop-loss and take-profit in percent of current price (user-defined).
• Separate parameters and on/off switches for longs and shorts.
5. Visuals
• GMA (dots) and Smoothed GMA (line).
• Structure break lines plus “BoS PH/PL” labels at the midpoint between pivot and break.
Inputs
------
Gaussian
• Gaussian Length (default 30) – smoothing window.
• Gaussian Scatterplot – toggle GMA dots.
Smart-Money Pivot
• Pivot Length (default 20).
• Bull / Bear colors.
Risk settings
• Long / Short enable.
• Individual SL % and TP % (default 1 % SL, 30 % TP).
• Strategy uses percent-of-equity sizing; initial capital defaults to 10 000 USD.
Adjust these to reflect your own account size, realistic commission and slippage.
Best practice & compliance notes
--------------------------------
• Test on a data sample that yields ≥ 100 trades to obtain statistically relevant results.
• Keep risk per trade below 5–10 % of equity; the default values comply with this guideline.
• Explain any custom settings you publish that differ from the defaults.
• Do **not** remove the code header or licence notice (MPL-2.0).
• Include realistic commission and slippage in your back-test before publishing.
• The script does **not** repaint; orders are processed on bar close.
Usage
-----
1. Add the script to any symbol / timeframe; intraday and swing timeframes both work—adjust lengths accordingly.
2. Configure SL/TP and position size to match your personal risk management.
3. Run “List of trades” and the performance summary to evaluate expectancy; forward-test before live use.
Disclaimer
----------
Trading involves substantial risk. Past performance based on back-testing is not necessarily indicative of future results. The author is **not** responsible for any financial losses arising from the use of this script.
Dumb Money ConceptUse in 1 minute timeframe
1. Strategy setup
Name & sizing: Trades 25% of your account on each signal, assumes 0.04% commission + 2‑tick slippage, starts with a notional 10 million.
Timing: Only makes decisions at each 1‑minute bar close, and processes orders at bar‑close.
2. Optional filters (both default to off)
Volatility filter : when on, requires that yesterday’s ATR (average true range) ≥ your threshold before even placing an entry.
Trend filter : when on, only allows a “long” if yesterday’s close was above its daily MA, or a “short” if below.
You can toggle each filter on/off and adjust ATR period, ATR threshold, and MA length through the inputs at the top.
3. Signal logic (“dumb money” wicks)
At today’s first minute, the script pulls yesterday’s open, high, low, close, ATR and MA—using only completed daily bars so nothing repaints.
It measures the size of yesterday’s upper wick (close→high) vs. lower wick (open→low).
If the upper wick was longer, that sets a long bias (“dumb money” got shaken out at the top). Otherwise it sets a short bias.
4. Calculate where to place orders
On that same first minute of day:
Entry: a limit order at half of yesterday’s range away from today’s open (below the open for longs, above for shorts).
Stop‑loss: one full‑range (×1.0) below today’s open for longs (and above for shorts).
Take‑profit: 1.236× yesterday’s range above today’s open for longs (and below for shorts).
5. Apply filters before sending entry
Before actually placing that limit order, it checks:
Volatility: if enabled, requires yesterday’s ATR ≥ your “Min Daily ATR.”
Trend: if enabled, requires yesterday’s close to lie on the same side of its daily MA as your signal.
If either filter fails, no order is sent.
6. Give the limit order up to 24 hours to fill
The code remembers the bar‑index when the order went live.
If 1440 one‑minute bars pass (≈24 h) without a fill, it automatically cancels the unfilled entry—so stale orders don’t hang around.
7. Once filled, TP/SL manage the trade
As soon as your limit order executes, two opposite orders are placed:
A take‑profit at the 1.236× range level
A stop‑loss at the –1.0× range level
One cancels the other when triggered.
8. No overnight risk
On the very first minute of the next daily bar, any position still open is force‑closed (“Time Exit”)
Prime Trend ReactorIntroduction
Prime Trend Reactor is an advanced crypto trend-following strategy designed to deliver precision entries and exits based on a multi-factor trend consensus system.
It combines price action, adaptive moving averages, momentum oscillators, volume analysis, volatility signals, and higher timeframe trend confirmation into a non-repainting, fully systematic approach.
This strategy is original: it builds a unique trend detection matrix by blending multiple forms of price-derived signals through weighted scoring, rather than simply stacking indicators.
It is not a mashup of public indicators — it is engineered from the ground up using custom formulas and strict non-repainting design.
It is optimized for 1-hour crypto charts but can be used across any asset or timeframe.
⚙️ Core Components
Prime Trend Reactor integrates the following custom components:
1. Moving Averages System
Fast EMA (8), Medium EMA (21), Slow EMA (50), Trend EMA (200).
Detects short-term, medium-term, and long-term trend structures.
EMA alignment is scored as part of the trend consensus system.
2. Momentum Oscillators
RSI (Relative Strength Index) with Smoothing.
RMI (Relative Momentum Index) custom-calculated.
Confirms price momentum behavior aligned with trend.
3. Volume Analysis
CMF (Chaikin Money Flow) for accumulation/distribution pressure.
OBV (On Balance Volume) EMA Cross for volume flow confirmation.
4. Volatility and Price Structure
Vortex Indicator (VI+ and VI-) for trend strength and directional bias.
Mean-Extreme Price Engine blends closing price with extremes (high/low) based on user-defined ratio.
5. Structure Breakout Detection
Detects structure breaks based on highest high/lowest low pivots.
Adds weight to trend strength on fresh breakouts.
6. Higher Timeframe Confirmation (HTF)
Uses higher timeframe EMAs and close to confirm macro-trend direction.
Smartly pulls HTF data with barmerge.lookahead_off to avoid repainting.
🔥 Entry and Exit Logic
Long Entry: Triggered when multi-factor trend consensus turns strongly bullish.
Short Entry: Triggered when consensus flips strongly bearish.
Take Profits (TP1/TP2):
TP1: Partial 50% profit at small target.
TP2: Full 100% close at larger target.
Exit on Trend Reversal:
If trend consensus reverses before hitting TP2, the strategy exits early to protect capital.
TP Hits and Trend Reversals fire real-time webhook-compatible alerts.
🧩 Trend Consensus Matrix (Original Concept)
Instead of relying on a single indicator, Prime Trend Reactor calculates a weighted score using:
EMA Alignment
Momentum Oscillators (RSI + RMI)
Volume Analysis
Volatility (Vortex)
Higher Timeframe Bias
Each component adds a weighted contribution to the final trend strength score.
Only when the weighted score exceeds a user-defined threshold does the system allow entries.
This multi-dimensional scoring system is original and engineered specifically to avoid noisy or lagging traditional signals.
📈 Visualization and Dashboard
Custom EMA Clouds dynamically fill between Fast/Medium EMAs.
Colored Candles show real-time trend direction.
Dynamic Dashboard displays:
Current Position (Long/Short/Flat)
Entry Price
TP1 and TP2 Hit Status
Bars Since Entry
Win Rate (%)
Profit Factor
Current Trend Signal
Consensus Score (%)
🛡️ Non-Repainting Design
All trend calculations are based on current and confirmed past data.
HTF confirmations use barmerge.lookahead_off.
No same-bar entries and exits — enforced logic prevents overlap.
No lookahead bias.
Strict variable handling ensures confirmed-only trend state transitions.
✅ 100% TradingView-approved non-repainting behavior.
📣 Alerts and Webhooks
This strategy includes full TradingView webhook support:
Long/Short Entries
TP1 Hit (Partial Exit)
TP2 Hit (Full Exit)
Exit on Trend Reversal
All alerts use constant-string JSON formatting compliant with TradingView multi-exchange bots:
📜 TradingView Mandatory Disclaimer
This strategy is a tool to assist in market analysis. It does not guarantee profitability. Trading financial markets involves risk. You are solely responsible for your trading decisions. Past performance does not guarantee future results.
EMA Crossover Strategy with Take Profit and Candle HighlightingStrategy Overview:
This strategy is based on the Exponential Moving Averages (EMA), specifically the EMA 20 and EMA 50. It takes advantage of EMA crossovers to identify potential trend reversals and uses multiple take-profit levels and a stop-loss for risk management.
Key Components:
EMA Crossover Signals:
Buy Signal (Uptrend): A buy signal is generated when the EMA 20 crosses above the EMA 50, signaling the start of a potential uptrend.
Sell Signal (Downtrend): A sell signal is generated when the EMA 20 crosses below the EMA 50, signaling the start of a potential downtrend.
Take Profit Levels:
Once a buy or sell signal is triggered, the strategy calculates multiple take-profit levels based on the range of the previous candle. The user can define multipliers for each take-profit level.
Take Profit 1 (TP1): 50% of the previous candle's range above or below the entry price.
Take Profit 2 (TP2): 100% of the previous candle's range above or below the entry price.
Take Profit 3 (TP3): 150% of the previous candle's range above or below the entry price.
Take Profit 4 (TP4): 200% of the previous candle's range above or below the entry price.
These levels are adjusted dynamically based on the previous candle's high and low, so they adapt to changing market conditions.
Stop Loss:
A stop-loss is set to manage risk. The default stop-loss is 3% from the entry price, but this can be adjusted in the settings. The stop-loss is triggered if the price moves against the position by this amount.
Trend Direction Highlighting:
The strategy highlights the bars (candles) with colors:
Green bars indicate an uptrend (when EMA 20 crosses above EMA 50).
Red bars indicate a downtrend (when EMA 20 crosses below EMA 50).
These visual cues help users easily identify the market direction.
Strategy Entries and Exits:
Entries: The strategy enters a long (buy) position when the EMA 20 crosses above the EMA 50 and a short (sell) position when the EMA 20 crosses below the EMA 50.
Exits: The strategy exits the positions at any of the defined take-profit levels or the stop-loss. Multiple exit levels provide opportunities to take profit progressively as the price moves in the favorable direction.
Entry and Exit Conditions in Detail:
Buy Entry Condition (Uptrend):
A buy position is opened when EMA 20 crosses above EMA 50, signaling the start of an uptrend.
The strategy calculates take-profit levels above the entry price based on the previous bar's range (high-low) and the multipliers for TP1, TP2, TP3, and TP4.
Sell Entry Condition (Downtrend):
A sell position is opened when EMA 20 crosses below EMA 50, signaling the start of a downtrend.
The strategy calculates take-profit levels below the entry price, similarly based on the previous bar's range.
Exit Conditions:
Take Profit: The strategy attempts to exit the position at one of the take-profit levels (TP1, TP2, TP3, or TP4). If the price reaches any of these levels, the position is closed.
Stop Loss: The strategy also has a stop-loss set at a default value (3% below the entry for long trades, and 3% above for short trades). The stop-loss helps to protect the position from significant losses.
Backtesting and Performance Metrics:
The strategy can be backtested using TradingView's Strategy Tester. The results will show how the strategy would have performed historically, including key metrics like:
Net Profit
Max Drawdown
Win Rate
Profit Factor
Average Trade Duration
These performance metrics can help users assess the strategy's effectiveness over historical periods and optimize the input parameters (e.g., multipliers, stop-loss level).
Customization:
The strategy allows for the adjustment of several key input values via the settings panel:
Take Profit Multipliers: Users can customize the multipliers for each take-profit level (TP1, TP2, TP3, TP4).
Stop Loss Percentage: The user can also adjust the stop-loss percentage to a custom value.
EMA Periods: The default periods for the EMA 50 and EMA 20 are fixed, but they can be adjusted for different market conditions.
Pros of the Strategy:
EMA Crossover Strategy: A classic and well-known strategy used by traders to identify the start of new trends.
Multiple Take Profit Levels: By taking profits progressively at different levels, the strategy locks in gains as the price moves in favor of the position.
Clear Trend Identification: The use of green and red bars makes it visually easier to follow the market's direction.
Risk Management: The stop-loss and take-profit features help to manage risk and optimize profit-taking.
Cons of the Strategy:
Lagging Indicators: The strategy relies on EMAs, which are lagging indicators. This means that the strategy might enter trades after the trend has already started, leading to missed opportunities or less-than-ideal entry prices.
No Confirmation Indicators: The strategy purely depends on the crossover of two EMAs and does not use other confirming indicators (e.g., RSI, MACD), which might lead to false signals in volatile markets.
How to Use in Real-Time Trading:
Use for Backtesting: Initially, use this strategy in backtest mode to understand how it would have performed historically with your preferred settings.
Paper Trading: Once comfortable, you can use paper trading to test the strategy in real-time market conditions without risking real money.
Live Trading: After testing and optimizing the strategy, you can consider using it for live trading with proper risk management in place (e.g., starting with a small position size and adjusting parameters as needed).
Summary:
This strategy is designed to identify trend reversals using EMA crossovers, with customizable take-profit levels and a stop-loss to manage risk. It's well-suited for traders looking for a systematic way to enter and exit trades based on clear market signals, while also providing flexibility to adjust for different risk profiles and trading styles.






















